home *** CD-ROM | disk | FTP | other *** search
- * DATE 08/26/84 13:27
- * statement module
- STOR CHR(PEEK(063)) TO dr
- SELE PRIMARY
- USE &dr.:account
- SET index TO &dr.:account
- REST from coname additive
- ERAS
- STOR t TO more2
- DO WHIL more2
- STOR 'Y' TO printer
- STOR 'N' TO disk
- STOR ' ' TO filename
- STOR 0 TO rec:no
- STOR '?' TO comm
- STOR 'N' TO nowprint
- TEXT
- >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
- * *
- * *
- * *
- >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
- * *
- * *
- * *
- * *
- * *
- * *
- * *
- * *
- * *
- * *
- * *
- * *
- * *
- * *
- >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
- * Please select one of the above options. You may also leave this menu *
- * by typing 'Q' and get on-line HELP by typing '?'. *
- >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
- ENDT
- @ 3,04 SAY coname + ' - STATEMENT PRINTING MENU'
- @ 3,65 SAY date()
- @ 7,11 SAY "A. Prepare a new Trial Balance"
- @ 8,11 SAY "B. Prepare a new Balance Sheet and Profit & Loss Statement"
- @ 9,11 SAY "C. Print a previously prepared Trial Balance"
- @ 10,11 SAY "D. Print a previously prepared Balance Sheet and P&L Statement"
- @ 11,11 SAY "E. Return to main accounting menu"
- @ 13,23 SAY "PLEASE SELECT ONE OF THE OPTIONS"
- @ 13,58 GET comm PICTURE '!'
- READ
- DO WHIL @(COMM, 'ABCDE?Q') = 0
- STOR '?' TO comm
- @ 13,58 GET comm PICTURE '!'
- READ
- ENDD WHILE @(comm)
- DO CASE
- CASE comm = 'A' .OR. comm = 'B'
- STOR DATE() TO stdate
- STOR '12' TO mfyr
- STOR '99' TO build1
- STOR ',' TO bl
- STOR bl TO mcode1
- STOR bl TO mcode2
- STOR bl TO mcode3
- STOR bl TO mcode4
- STOR bl TO mcode5
- STOR bl TO mcode6
- STOR bl TO mcode7
- STOR bl TO mcode8
- STOR bl TO mcode9
- STOR bl TO mcode0
- STOR bl TO mcodea
- STOR 'N' to stub1
- STOR ' ' TO stubdate
- STOR t TO maybe
- @ 13,00 SAY " *****************************************************************************"
- @ 14,00 SAY " * What is the statement date ? *"
- @ 14,58 GET stdate PICTURE '99/99/99'
- READ
- STOR $(stdate,7,2) + $(stdate,1,2) + $(stdate,4,2) TO stdat
- @ 15,00 SAY " * What is the ending month of the fiscal or calendar year ? *"
- @ 15,68 GET mfyr PICTURE '99'
- READ
- IF comm = 'B'
- @ 16,00 SAY " * Do you want a one month report included ? *"
- @ 16,60 GET stub1 PICTURE '!'
- READ
- ENDI comm= 'B'
- IF stub1 = 'Y'
- STOR t TO stub
- STOR bl TO mcode6a
- STOR bl TO mcode7a
- STOR bl TO mcode8a
- STOR bl TO mcode9a
- STOR bl TO mcode0a
- STOR bl TO mcodeaa
- IF $(stdat,3,2) = '01'
- STOR (VAL(stdat) -10000) TO stdat1
- STOR STR(stdat1,6) TO stdat
- STOR $(stdat,1,2) + '12' + $(stdat,5,2) TO stubdate
- ELSE
- STOR (VAL(stdat) -100) TO stdat1
- STOR STR(stdat1,6) TO stubdate
- ENDI $(stdat)
- ELSE
- STOR f TO stub
- ENDI stub1
- @ 17,00 SAY " * What building shall we do ('99' for all) ? *"
- @ 17,60 GET build1 PICTURE '99'
- READ
- @ 18,00 SAY " * Do you want to print the statement now ? *"
- @ 18,60 GET nowprint PICTURE '!'
- READ
- STOR 1 TO countit
- @ 17,00 SAY " * *"
- @ 18,00 SAY " * *"
- @ 14,00 SAY " * *"
- @ 15,00 SAY " * This will take a while - so please be patient *"
- @ 16,00 SAY " * I am examining record number....... *"
- @ 16,40 SAY countit
- STOR 0 TO tempamt
- STOR 0 TO tempamt1
- GO top
- STOR $(data,7,4) TO tempcr
- STOR $(data,5,2) TO build
- STOR t TO range
- STOR t TO more
- STOR 1 TO planct
- STOR '10115220321323425530640750856957060A' TO plan
- DO WHIL more
- *******************************************************************************
- * NOTE - if you change the ranges in the Chart of Accounts the three *
- * number groupings in 'plan' may require changing to caculate the statements *
- * 'plan' appears again later on under IF STUB *
- *******************************************************************************
- STOR t TO LOOPING
- DO WHIL looping
- STOR $(plan,planct,3) TO nu
- STOR $(nu,1,2) TO nu1
- STOR $(nu,3,1) TO nu2
- IF range .AND. planct = 19
- STOR # TO rec:no
- STOR f TO range
- STOR tempcr TO tempcr1
- ENDI range
- IF $(tempcr,1,2) = '&nu1'
- DO WHIL $(data,7,2) = '&nu1' .AND. (.NOT. EOF)
- IF (build1 = '99' .OR. build1 = build) .AND. date <= stdat
- STOR $(data,7,4) TO cr
- IF tempcr = cr
- STOR t TO maybe
- STOR tempamt + amount TO tempamt
- ELSE
- STOR STR(tempamt,12,2) TO tempam
- STOR 0 TO tempamt
- STOR 1 TO blank
- DO WHIL $(tempam,blank,1)=' '
- STOR blank+1 TO blank
- ENDD
- STOR $(tempam,blank) TO tempam
- STOR (tempcr +',' + tempam +',') TO mtemp
- STOR (mcode&nu2 + mtemp) TO mcode&nu2
- STOR cr TO tempcr
- STOR f TO maybe
- ENDI tempcr = cr
- ELSE
- SKIP
- ENDI build1
- IF maybe
- SKIP
- STOR countit + 1 TO countit
- @ 16,40 SAY countit
- ENDI maybe
- ENDD WHILE $(data,7,2) = nu2
- STOR STR(tempamt,12,2) TO tempam
- STOR 1 TO blank
- DO WHIL $(tempam,blank,1)=' '
- STOR blank+1 TO blank
- ENDD
- STOR $(tempam,blank) TO tempam
- STOR (tempcr +',' + tempam +',') TO mtemp
- STOR (mcode&nu2 + mtemp) TO mcode&nu2
- STOR $(data,7,4) TO tempcr
- STOR 0 TO tempamt
- ENDI $(tempcr,1,2) = nu1
- STOR planct + 3 TO planct
- IF nu2 = 'A' .OR. EOF
- STOR f TO looping
- ENDI nu2
- ENDD while looping
- IF stub
- GO rec:no
- STOR 0 TO tempamt
- STOR tempcr1 TO tempcr
- STOR 1 TO planct
- STOR '306a407a508a569a570a60Aa' TO plan
- STOR t TO LOOPING
- DO WHIL looping
- STOR $(plan,planct,4) TO nu
- STOR $(nu,1,2) TO nu1
- STOR $(nu,3,2) TO nu2
- IF $(tempcr,1,2) = '&nu1'
- DO WHIL $(data,7,2) = '&nu1' .AND. (.NOT. EOF)
- IF (build1 = '99' .OR. build1 = build) .AND. date <= stdat
- STOR $(data,7,4) TO cr
- IF tempcr = cr
- STOR t TO maybe
- STOR tempamt + amount TO tempamt
- ELSE
- STOR STR(tempamt,12,2) TO tempam
- STOR 0 TO tempamt
- STOR 1 TO blank
- DO WHIL $(tempam,blank,1)=' '
- STOR blank+1 TO blank
- ENDD
- STOR $(tempam,blank) TO tempam
- STOR (tempcr +',' + tempam +',') TO mtemp
- STOR (mcode&nu2 + mtemp) TO mcode&nu2
- STOR cr TO tempcr
- STOR f TO maybe
- ENDI tempcr = cr
- ELSE
- SKIP
- ENDI build1
- IF maybe
- SKIP
- STOR countit + 1 TO countit
- @ 16,40 SAY countit
- ENDI maybe
- ENDD WHILE $(data,7,2) = nu2
- STOR STR(tempamt,12,2) TO tempam
- STOR 1 TO blank
- DO WHIL $(tempam,blank,1)=' '
- STOR blank+1 TO blank
- ENDD
- STOR $(tempam,blank) TO tempam
- STOR (tempcr +',' + tempam +',') TO mtemp
- STOR (mcode&nu2 + mtemp) TO mcode&nu2
- STOR $(data,7,4) TO tempcr
- STOR 0 TO tempamt
- ENDI $(tempcr,1,2) = nu1
- STOR planct + 4 TO planct
- IF $(nu2,1,1) = 'A' .OR. EOF
- STOR f TO looping
- ENDI nu2
- ENDD while looping
- ENDI stub
- STOR f TO more
- ENDD while more
- SELE SECONDARY
- USE &dr.:statemnt
- IF stub
- APPE BLANK
- REPL date WITH stdate, fyr WITH mfyr, bld WITH build1
- REPL code6 WITH mcode6a, code7 WITH mcode7a, code8 WITH mcode8a
- REPL code9 WITH mcode9a, code0 WITH mcode0a, codea WITH mcodeaa
- REPL stubs WITH t
- ENDI stub
- APPE BLANK
- REPL date WITH stdate, fyr WITH mfyr, bld WITH build1
- REPL code1 WITH mcode1, code2 WITH mcode2, code3 WITH mcode3
- REPL code4 WITH mcode4, code5 WITH mcode5, code6 WITH mcode6
- REPL code7 WITH mcode7, code8 WITH mcode8, code9 WITH mcode9
- REPL code0 WITH mcode0, codea WITH mcodea
- IF stub
- REPL stubs WITH t
- ENDI stub
- IF nowprint = 'Y'
- STOR stdate TO daya
- RELE stdate, mfyr, mcode1, mcode2, mcode3, mcode4, mcode5
- RELE mcode6, mcode7, mcode8, mcode9, mcode0,mcodea, bl, maybe, cr
- RELE mcode6a, mcode7a, mcode8a, mcode9a, mcode0a, mcodeaa
- RELE countit, tempcr, blank, tempam, mtemp, more, account
- RELE command, build1, tempamt, stub1
- SAVE TO temp
- CLEA
- REST from temp
- IF comm = 'A'
- STOR 'C' TO com1
- ELSE
- STOR 'D' TO com1
- ENDI comm
- DO statemp.acc
- ELSE
- ERAS
- CLEA
- STOR CHR(PEEK(063)) TO dr
- SELE PRIMARY
- USE &dr.:account
- SET INDEX TO &dr.:account
- REST from coname additive
- STOR t TO more2
- ENDI nowprint
- CASE comm = 'C' .OR. comm = 'D'
- IF comm = 'C'
- STOR 'C' TO com1
- ELSE
- STOR 'D' TO com1
- ENDI comm
- DO statemp.acc
- CASE comm = '?'
- ERAS
- TEXT
-
- S T A T E M E N T P R I N T I N G H E L P M E N U
-
- This module calculates a trial balance and an income statement and
- a balance sheet. It will also prepare a one month 'stub' income
- statement.
-
- You can print the statement at the time of the calculation, or at
- any later time. It will always print the last statement prepared
- under a particular date. If you initially asked for the stub
- statement, it will always print the stub statement in addition to
- the full statement.
-
- If you elect to print the statement, you can send it to both the
- screen and the printer or just the screen. You can also send the
- output to a disk file where you can edit it further before printing.
-
- It will take a few minutes for the calculations, so please be patient
- while it runs.
-
-
- Please hit any key to return to the menu
- ENDT
- SET CONSOLE OFF
- WAIT
- SET CONSOLE ON
- ERAS
- STOR t TO more2
- CASE comm = 'E' .OR. comm = 'Q'
- STOR f TO more2
- ENDC
- ENDD WHILE more2
- RELE ALL
- STOR t TO account